﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace FORM_ATM
{


    
    public partial class Form3 : Form
    {
       
        public delegate void Update();
        public event Update capnhat;

        public ServiceReference1.KH k = new ServiceReference1.KH();
        public ServiceReference1.KH k2 = new ServiceReference1.KH();
        public ServiceReference1.Service1Client p = new ServiceReference1.Service1Client("BasicHttpBinding_IService1");

        public Form3()

        {
            InitializeComponent();
        }
        public Form2 frmForm2;
        //NHẤN NÚT NEXT
        private void button1_Click(object sender, EventArgs e)
        {
            
            try
            {
            int i = p.kiemTraTaiKhoan(txt_tkchuyen.Text);
            if (i == 1)
            {
                giaoDienNhapSoTienCanChuyen();
                k2 = p.getKH(txt_tkchuyen.Text);
            }
            else
            {
                MessageBox.Show("Số tài khoản không tồn tại");
            
                giaoDienChuyenTien();
            }

            }
            catch
            {
                MessageBox.Show("Vui lòng nhập lại số tài khoản");
            }

        }

        private void giaoDienNhapSoTienCanChuyen()
        {
            button4.Visible = true;
            button5.Visible = true;
            button6.Visible = true;
            txt_sotienchuyen.Visible = true;
            label1.Visible = true;
            label3.Text = "Số tiền cần chuyển";
            txt_tkchuyen.Visible = false;
            button1.Visible = false;
            button2.Visible = false;
            button3.Visible = false;
            txt_sotienchuyen.Text = null;
            
        }
        //NHẬP LẠI SỐ TÀI KHOẢN
        private void button2_Click(object sender, EventArgs e)
        {
            txt_tkchuyen.Text = null;

        }
        //THOÁT GIAO DỊCH CHUYỂN TIỀN Ở BƯỚC NHẬP SỐ TÀI KHOẢN
        private void button3_Click(object sender, EventArgs e)
        {
            this.Close();
            frmForm2.Show();
        }
        //HOÀN THÀNH GIAO DỊCH CHUYỂN TIỀN
        public int kiemtrasotien(int s1, int s2)
        {
            if (s1 - 50000 >= s2)
                return 1;
            else
                return 0;

        }
        private void button4_Click(object sender, EventArgs e)
        {
            try
            {
                int st = Int32.Parse(txt_sotienchuyen.Text);
                int i = kiemtrasotien(k._sotien,st );
                if (i == 1)
                {
                    int j = p.rutTien(k._id, (k._sotien - st - 3000));
                    if (j == 1)
                    {
                        int h = p.rutTien(txt_tkchuyen.Text, (k2._sotien + st));
                        if (h == 1)
                        {
                            MessageBox.Show("Chuyển tiền thành công");

                            capnhat();
                             
                            this.Close();
                            frmForm2.Show();
                        }
                        else
                        {
                            MessageBox.Show("Chuyển tiền thất bại");
                            this.Close();
                            frmForm2.Show();
                            
                        }

                    }
                    else
                    {
                        MessageBox.Show("Không chuyển được tiền");
                        this.Close();
                        frmForm2.Show();
                    }

                }
                else
                {
                    MessageBox.Show("Số tiền chuyển lớn hơn số tiền có trong tk");
                    giaoDienNhapSoTienCanChuyen();
                }
            }
            catch
            {
                MessageBox.Show("Vui lòng nhập lại số tiền cần chuyển");
                giaoDienNhapSoTienCanChuyen();
            }
        
        }

        private void Form3_Load(object sender, EventArgs e)
        {
            giaoDienChuyenTien();
        }

        private void giaoDienChuyenTien()
        {
            k = p.getKH(frmForm2._userid);
            button4.Visible = false;
            button5.Visible = false;
            button6.Visible = false;
            txt_sotienchuyen.Visible = false;
            label1.Visible = false;
            txt_tkchuyen.Text = null;
            label6.Text = "Xin chào " + k._ten + " !";
            label4.Text = "Số tài khoản : " + k._id + " .";
            label5.Text = "Số tiền : " + k._sotien.ToString() + " VNĐ";
        }

        //NHẬP LẠI SỐ TIỀN CHUYỂN
        private void button5_Click(object sender, EventArgs e)
        {
            txt_sotienchuyen.Text = null;
        }
        //THOÁT GIAO DỊCH CHUYỂN TIỀN Ở BƯỚC NHẬP SỐ TIỀN
        private void button6_Click(object sender, EventArgs e)
        {
            this.Close();
            frmForm2.Show();
        }

        private void Form3_FormClosing(object sender, FormClosingEventArgs e)
        {
            frmForm2.Show(); //GỌI FORM 2
        }

     
    }
}
